This invention relates to a method of controlling the copying of computer software and more particularly, to such a method which allows an unlimited number of backup copies of a program to be made for the same machine, but selectively prevents the execution of such backup copies or the original on other unauthorized machines.
In recent years, the sale and/or licensing of computer software has become an established industry of it own. In this industry, more than any other, the illegal copying of copyrighted works of authorship has robbed the copyright owner of large amounts of revenue. The illegal copying has come from many different segments of users and other sellers of computer software. On one extreme, the organized pirate copies software and then sells it at discount to potential purchasers from the true owner, in effect, putting the developer of the copyrighted version of the software out of business. On the other extreme, a rightful possessor of the software may make a limited number of additional copies for use as backup copies on the original computer, or, if authorized by the owner of the software, for use on a home computer, or for use on a replacement or additional computer used by the authorized user in the same office. Between these two extremes, many rightful possessors of software may merely give, or even lend the software to friends or others in the same office.
In the first case, the copyright owner is generally unwilling to grant his permission to the pirate. In the second case, however, the copyright owner generally should have no objection to true backup copies being used, since the user of the software has a legitimate right to make a backup copy of the software for protection against the inadvertent destruction of the original copy. On the other hand, the owner of the software copyright may or may not be willing to allow the user to copy the software for use on other computers, or the owner of the software copyright may be willing to allow the copying of the software for use on other computers in the same office for an additional fee.
Attempts to solve copying problems in the past have included various techniques of copy protection. Common for most of these techniques is the placing of code in the program which limits the number of executable copies of a particular copy of software which can be made. However, as soon as a new technique for copy protection is developed, it is quickly broken by knowledgeable computer experts. These experts then market programs which allow the so called copy-protected software to be copied at will. In some situations, such copying may be approved by the owner, such as, making backup copies, but in other situations, the copying may be without the owner's approval, and hence illegal, such as the making copies for friends. However, the copy protect schemes typically don't distinguish between the allowable copying and the illegal copying. Even to the extent that the copy protection schemes of the prior art have allowed the making of a backup copy of the software, such schemes generally don't allow a legitimate backup of the backup or multiple backups of the original for execution on the same machine. Further, the copy protect schemes of the prior art do not prevent the permitted backup copies to be given to a friend for a disallowed use on a different machine.
One drawback of many copy protection schemes of the past is that problems may occur after an authorized user copies the software into a hard disk, or other type of permanent large memory associated with the machine. These problems, as well as the protests of the user to the inconveniences and inability to make sufficient legitimate copies, have led many software vendors to discontinue the use of copy protection schemes. The result, of course, is that many unauthorized copies of software are being made, thereby causing the author of the program to lose rightful rewards for his creative endeavors.
Another problem with the marketing of software has more recently appeared as hardware technology has advanced to allow a local area networks of many computers and other sophisticated communications between computers in either the same general area or across country. One problem the software industry is facing as a result of this new technology is that large companies with many computers are demanding either site licenses or large volume discounts. In either case, the price of the software is directly tied to the number of copies and it, thus, becomes necessary for the software owner, or licensed distributor, to keep track of the number of copies of the software being made by or for the large customer. Further, many of the same problems of unauthorized copies made for friends or for machines beyond the site licensed still remain. Traditional copy protection schemes offer no solution to these problems.
It would be preferable to utilize a copy control scheme, rather than the copy protection, or prevention, schemes of the prior art in order to overcome the above noted problems. A copy control scheme is one in which the scheme does not interfere with the proper execution of the software on an authorized machine, in which the rightful possessor of the software can make as many backup copies as is desired, and in which the party charged with authorizing copies, such as a copyright owner, is able to approve, control and have knowledge of all copies made for additional machines. In addition, such a scheme should allow any of the backup copies to be executed on the authorized machine, but stop the execution of all such backup, or other unauthorized, copies on machines other than the authorized machine. Finally, such a scheme should be able to prevent override techniques, such as those programs of the prior art that override copy protection schemes, from avoiding, overriding or bypassing the copy control scheme.
Another problem of the prior art has been the ability of authorized distributors of software to assure the registration of licensed software and obtain desired feedback from users regarding computer configurations. Registration is desirable in the current environment of software marketing using unsigned license agreements, since the registration of the software with the authorized distributor may manifest the acceptance of the license terms. Further, the system configuration feedback of the software developer's customer base is valuable business information for the developer so that the developer knows what additional functions can or should be added to future enhancements of the software product, or what customer segment should be targeted in a marketing program based on hardware availability for future software products.